// 定义懒加载指令
import { useIntersectionObserver } from '@vueuse/core'

export const lazyPlugin = {
    install(app) {
        app.directive('img-lazy', {
            mounted(el, binding) {
                // el: 指令绑定的元素
                // binding: binding.value 指令的绑定值 图片url
                console.log(el, binding.value);
               const {stop} =  useIntersectionObserver(
                    el, // 监听的元素
                    ([{ isIntersecting }]) => {
                        // isIntersecting是一个布尔值 监听是否进入可视区
                        console.log(isIntersecting);
                        if (isIntersecting) {
                            // 图片进入可视区 设置图片的src
                            el.src = binding.value
                            stop()
                        }
                    }
                )
            }
        })
    }
}
